iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 4
0
Software Development

天天 LeetCode,立地成佛:三十天從頭開始學演算法系列 第 4

[Day 4] 常常出現在第一章的複雜度是什麼可以吃嗎

  • 分享至 

  • xImage
  •  

今天不解題,但是講講複雜度。複雜度是拿來衡量演算法效率的東西,簡單來說,可以想像成完成這個解法所要執行的運算次數。例如給定資料筆數為 n 的情況下,有的演算法要執行 2 ^ n 次計算,有的要執行 n ^ 2 次。在資料筆數 n 很小的情況下,這兩種算法的效率相差無幾,但在資料量很大的情況下,他們的運算次數就有顯著差別。有時候我們也會去計算複雜度的上界和下界,以此評估演算法的效率為何。

複雜度經常會出現在演算法課程的第一章,不過初學者面對這個東西很容易會感到茫然,而且這東西比較偏向數學計算,上課考試會考,但實際運作中不太會直接用到,因此我覺得先有個概念就好,等熟悉演算法到一定程度後,再回過頭來研究會比較有感。

好啦,以上簡單分享,稍微停滯一天,明天再繼續努力。明明才第四天就開始無力,鐵人賽果然是個大挑戰。我前天和昨天的狀態都很差,看文章質量就可以明顯感覺到和第一天有斷層。有想寫的卻寫不出多少東西,解題的過程又一直卡住卡到沒時間,所以之後的文章會調整一下方向吧,原本希望每天固定講一些知識點,現在大約會往個人學習筆記路線發展(?)

不論如何都感謝看到這邊的大家,希望接下來剩下的二十六天能越來越好,也希望之後有力氣回去修第二第三天的內容QQ


上一篇
[Day 3] Sort an Array:大事化小小事化無的解決法,Divide and Conquer
下一篇
[Day 5] Climbing Stairs:從下而上的 Dynamic Programming
系列文
天天 LeetCode,立地成佛:三十天從頭開始學演算法12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言